#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <unistd.h>
#include "myStdio.h"    //使用自己写的的文件流函数

int main()
{
    //打开文件，写入一段话
    MY_FILE* fp = my_fopen("log.txt", "w");
    assert(fp);

    char inPutBuff[512] = "2110年1月1日，距离地球能源完全枯竭还有3650天。为了解决地球能源危机，\n人类制造了赛尔机器人和宇宙能源探索飞船赛尔号，去寻找神秘精灵看守的无尽能源。";

    int n = my_fwrite(inPutBuff, 1, strlen(inPutBuff), fp);
    printf("本次成功写入 %d 字节的数据", n);

    my_fclose(fp);

    printf("\n==============================\n");

    //重新打开文件
    fp = my_fopen("log.txt", "r");
    assert(fp);

    char outPutBuff[512] = { '\0' };
    n = my_fread(outPutBuff, 1, sizeof(outPutBuff), fp);
    printf("本次成功读取 %d 字节的数据，具体内容为: \n%s\n", n, outPutBuff);

    my_fclose(fp);
    fp = NULL;
    return 0;
}


// #include "myStdio.h"
// #include <assert.h>
// #include <string.h>
// #include <stdbool.h>
// #include <unistd.h>

// int main()
// {
//     MY_FILE* fp = my_fopen("file.txt", "r");
//     assert(fp);

//     //操作
//     // const char* str = "Hello MY_FILE";
//     // int cnt = 0;
//     // while(true)
//     // {
//     //     char buffer[64] = { 0 };
//     //     snprintf(buffer, sizeof(buffer), "%s:%d\n", str, cnt++);
//     //     size_t size = my_fwrite(buffer, sizeof(char), strlen(buffer), fp);
//     //     printf("成功写入%lu字节的数据\n", size);
//     //     sleep(1);
//     // }

//     char buffer[1024] = { 0 };
//     int ret = my_fread(buffer, sizeof(char), sizeof(buffer), fp);
//     printf("%s %d\n", buffer, ret);

//     my_fclose(fp);

//     return 0;
// }